﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Xyz.DataObjects.Entity.Dao;
using Xyz.DataObjects.Interfaces;

namespace Xyz.DataObjects.Entity
{
    public class EntityDaoFactory : IDaoFactory
    {
        public IAdministratorDao AdministratorDao
        {
            get { return new EntityAdministratorDao(); }
        }

        public IAgentDao AgentDao
        {
            get { return new EntityAgentDao(); }
        }

        public IAircraftDao AircraftDao
        {
            get { return new EntityAircraftDao(); }
        }

        public IAircraftSeatDao AircraftSeatDao
        {
            get { return new EntityAircraftSeatDao(); }
        }

        public IAirportDao AirportDao
        {
            get { return new EntityAirportDao(); }
        }

        public IBillingAddressDao BillingAddressDao
        {
            get { return new EntityBillingAddressDao(); }
        }

        public IBookingDao BookingDao
        {
            get { return new EntityBookingDao(); }
        }

        public ICardPaymentDao CardPaymentDao
        {
            get { return new EntityCardPaymentDao(); }
        }

        public ICardTypeDao CardTypeDao
        {
            get { return new EntityCardTypeDao(); }
        }

        public ICityDao CityDao
        {
            get { return new EntityCityDao(); }
        }

        public ICountryDao CountryDao
        {
            get { return new EntityCountryDao(); }
        }

        public ICustomerDao CustomerDao
        {
            get { return new EntityCustomerDao(); }
        }

        public IFlightDao FlightDao
        {
            get { return new EntityFlightDao(); }
        }

        public IFlightPriceDao FlightPriceDao
        {
            get { return new EntityFlightPriceDao(); }
        }

        public IFlightSeatDao FlightSeatDao
        {
            get { return new EntityFlightSeatDao(); }
        }

        public IGstDao GstDao
        {
            get { return new EntityGstDao(); }
        }

        public IMemberDao MemberDao
        {
            get { return new EntityMemberDao(); }
        }

        public IMemberPaymentDao MemberPaymentDao
        {
            get { return new EntityMemberPaymentDao(); }
        }

        public IPassengerDao PassengerDao
        {
            get { return new EntityPassengerDao(); }
        }

        public IPaymentMethodDao PaymentMethodDao
        {
            get { return new EntityPaymentMethodDao(); }
        }

        public ISeatTypeDao SeatTypeDao
        {
            get { return new EntitySeatTypeDao(); }
        }

        public IServiceCategoryDao ServiceCategoryDao
        {
            get { return new EntityServiceCategoryDao(); }
        }

        public IServiceDao ServiceDao
        {
            get { return new EntityServiceDao(); }
        }

        public ITerminalDao TerminalDao
        {
            get { return new EntityTerminalDao(); }
        }

        public ITicketDao TicketDao
        {
            get { return new EntityTicketDao(); }
        }

        public ITripDao TripDao
        {
            get { return new EntityTripDao(); }
        }

        public IRoleDao RoleDao
        {
            get { return new EntityRoleDao(); }
        }
    }
}
